$import('SFBusMap');
$import('MapUtil');
var SFBusUtil = {
	map:{
		
	},
	getMapById:function(id){
		var map = SFBusUtil.map[id];
		if(!map){
			map = new SFBusMap();
			SFBusUtil.map[id] = map;
		}
		return map;
	},
	bind:function(msg,callback){
		SFBusUtil.bindCtrl('all',msg,callback);
	},
	bindCtrl :function(controlId,msg,callback){
		SFBusUtil.getMapById(controlId).bind(msg,callback);
	},
	trigger:function(msg,param){
		MapUtil.foreach(SFBusUtil.map,function(e,pojo){
			SFBusUtil.triggerCtrl(e,msg,param);
		});
	},
	triggerCtrl:function(controlId,msg,param){
		SFBusUtil.getMapById(controlId).process(msg,param);
	}
}